Ruby 配列
#Ruby #array
code:rb
fruits = "apple", "banana", "cherry"
# 要素の取得(インデックスは0始まり)
fruits1 #=> "banana"
fruits-1 #=> "cherry"
fruits.first #=> "apple"
fruits.last(2) #=> "banana", "cherry"
# 要素を追加・上書き
fruits3 = "orange" #=> "apple", "banana", "cherry", "orange"
要素追加
code:rb
fruits = "apple", "banana", "cherry"
# 配列の末尾に1要素追加
fruits << "grape" #=> "apple", "banana", "cherry", "grape"
# 他の書き方
fruits.push("grage")
# pushなら複数追加も可能
fruits.push("orange", "grape") #=> "apple", "banana", "cherry", "orange", "grape"
# 配列の先頭に追加
fruits.unshift("peach") #=> "peach", "apple", "banana", "cherry"
要素削除
code:rb
fruits = "apple", "banana", "cherry"
# 配列末尾の要素を削除
fruits.pop #=> "cherry"
# 配列先頭の要素を削除
fruits.shift #=> "apple"
# インデックスを指定して削除
fruits.delete_at(1) #=> "banana"
# 値を指定して削除
fruits.delete("apple") #=> "apple"
# 条件を指定して削除
fruits.delete_if { |fruit| fruit.length <= 5 } #=> "banana", "cherry"
splat展開
code:rb
ary = 2, 3
1.push(ary) #=> [1, 2, 3]
1.push(*ary) #=> 1, 2, 3
*1..20
#=> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
code:rb
ary = "a", "b", "c", "d", "e", "f"
ary1..3 #=> "b", "c", "d"
# aryインデックス番号, 個数で要素取得
ary2, 3 #=> "c", "d", "e"
# 置き換え
ary2, 3 = "x" #=> "x"
ary #=> "a", "b", "x", "f"